This invention relates to a programming structure for user interfaces. The user interfaces for which the programming structure here to be described is useful may be found in at least two different environments. Attention will be given to each in turn, as will become more clear hereinafter.
A first environment of use for a user interface as here described is a consumer use of what has been identified as the "television space". That is, the use of video/audio signal streams such as in the past have been distributed by broadcast over radio frequency bands or by cable distribution, or made available from video recorder/player devices such as cassette recorders or video disc players, or made available from direct, live sources such as cameras, game systems or computers. Such video/audio signal streams, whether carrying analog or digitally encoded information, have come to represent a significant resource to most consumers for information and entertainment. There is a series of patents held in common with the invention here described, many of which include inventive contributions from the inventor here named, which describe at some length characteristics of and problems contemplated in the television space. The interested reader is referred to those patents for further discussion.
In those related patents, descriptions are given of resolutions of difficulties encountered by providing, for the television space and for other environments presenting similar problems of resource allocation and navigation, a display controller and control programs executed by the display controller and an associated central processing unit (CPU).
The control programs and the structure of those programs are the particular focus of this invention.
A second environment of use of a programming structure as here disclosed is in the area of personal communication devices or personal digital assistants, also known as PCAs or PDAs. Such devices are handheld computer systems typically having limited memory capacity and screen display area. The conjunction of these limitations renders the programming structure here to be described to be particularly advantageous, particularly where the PDA is used for access to the world wide web using the protocols and markup languages conventionally used in that network.
As has been the case with the television space described above, there is a series of related inventions held in common with this invention which relate to the PDA or PCA space.
As there described, the spread of information work to an increasing number of information workers and the consequent impacted on the work of more wide spread groups of employees within an enterprise, has given rise to a need for mobility of such employees. Particularly in such "outside" jobs as route salesperson, transport driver, or business consultant, it has become important to have access, while remote from an enterprise site, to enterprise data normally maintained on an enterprise system and accessed through a network of computer systems. Such access has been achieved, in part, through the use of wireline connected personal computer systems such as notebook or laptop computer systems. Typically, such a system may be equipped with a modem and communications software such that, when connected to a public switched telephone network (PSTN), the system may be connected with a supporting server or mainframe and a user may gain access to desired data.
With the development of radio communications such as exemplified by the cellular telephone networks, the possibility arose of eliminating the wireline connection between a personal computer system and a supporting server. Such systems have been developed, particularly for systems used in retail and warehousing businesses, which permit a user to move freely within an area which has radio transceiver service while remaining in intermittent or continuous contact with a data channel through which data may be exchanged with a server or mainframe supporting an enterprise activity. For purposes of discussion here, such systems in the hands of user will be referred to as "mobile client systems". A mobile client system is distinguished by the mobility of the user, who is free of the restraints against movement imposed by a wireline connection, and by the client nature of the system in that enterprise data accessed by the mobile client system is maintained on a server or mainframe computer system with which the mobile client is in communication. Such mobile client systems are also sometimes referred to as personal communications assistants or personal digital assistants. The interested reader is referred to "Wireless: The Revolution in Personal Telecommunications" by Ira Brodsky (Artech House, Boston, 1995) for additional background and information about mobile client systems.
Mobile client systems, as a class, present limitations on memory capacity and ad display area comparable to those encountered in the television space. Thus the user interface programming solutions found useful in one environment are useful int the other as well.